A Compositional Logic for Control Flow
نویسندگان
چکیده
We present a program logic, Lc, which modularly reasons about unstructured control flow in machine-language programs. Unlike previous program logics, the basic reasoning units in Lc are multipleentry and multiple-exit program fragments. Lc provides fine-grained composition rules to compose program fragments. It is not only useful for reasoning about unstructured control flow in machine languages, but also useful for deriving rules for common control-flow structures such as while-loops, repeat-until-loops, and many others. We also present a semantics for Lc and prove that the logic is both sound and complete with respect to the semantics. As an application, Lc and its semantics have been implemented on top of the SPARC machine language, and are embedded in the Foundational Proof-Carrying Code project to produce memory-safety proofs for machine-language programs.
منابع مشابه
A Typed, Compositional Logic for a Stack-Based Abstract Machine
We define a compositional program logic in the style of Floyd and Hoare for a simple, typed, stack-based abstract machine with unstructured control flow, global variables and mutually recursive procedure calls. Notable features of the logic include a careful treatment of auxiliary variables and quantification and the use of substructural typing to permit local, modular reasoning about program f...
متن کاملA Note about Compositional Verification of Sequential Programs
This paper deals with the compositional verification of sequential programs. This consists in deciding whether or not a given set of local structural properties of the functions of a program implies a given global behavioural property of the program. Here we consider properties expressed in monadic second-order logic dealing with the control flow of the program and the function calls occuring d...
متن کاملControlling Electrochemical Machining By Using a Fuzzy Logic Approach
New trends and the effect of key factors influence the quality of the holes produced by ECM processes. Researchers developed a fuzzy logic controller by adding intelligence to the ECM process. Maintaining optimum ECM process conditions ensures higher machining efficiency and performance. This paper presents the development of a fuzzy logic controller to add intelligence to the ECM process. An e...
متن کاملControlling Electrochemical Machining By Using a Fuzzy Logic Approach
New trends and the effect of key factors influence the quality of the holes produced by ECM processes. Researchers developed a fuzzy logic controller by adding intelligence to the ECM process. Maintaining optimum ECM process conditions ensures higher machining efficiency and performance. This paper presents the development of a fuzzy logic controller to add intelligence to the ECM process. An e...
متن کاملSpecification, Design and Verification of Distributed Embedded Systems
We are investigating the specification, design and verification of distributed systems that combine communications, computation and control in dynamic, uncertain and adversarial environments. Our goal is to develop methods and tools for designing control policies, specifying the properties of the resulting distributed embedded system and the physical environment, and proving that the specificat...
متن کاملComposing Modal Properties of Programs with Procedures
In component based software design, formal reasoning about programs has to be compositional, allowing global, program-wide properties to be inferred from the properties of its components. The present paper addresses the problem of compositional verification of behavioural control flow properties of sequential programs with procedures, expressed in a modal logic. We use as a starting point a max...
متن کامل